package com.itlong.cloud.property.dao;

import com.itlong.cloud.POJO.PO.DeviceEntranceRecordPO;
import com.itlong.cloud.POJO.VO.property.PropertyEquipRecordGetVO;
import com.itlong.cloud.abstracts.IAbstractBaseDao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * <desc>
 *      门禁通行记录Dao
 * </desc>
 *
 * @createDate 2017/10/11
 */
@Mapper
@Repository
public interface IDeviceEntranceRecordDao extends IAbstractBaseDao<DeviceEntranceRecordPO> {

    /**
     * <desc>
     *      分页查询门禁通行记录
     * <desc/>
     * @param
     * @return
     * @author Biao.R
     * @createDate 2017/10/11
     */
    List<PropertyEquipRecordGetVO> getEntranceRecordByPage(Map<String, Object> params);

    /**
     * <desc>
     *      分页查询门禁通行记录数量
     * <desc/>
     * @param
     * @return
     * @author Biao.R
     * @createDate 2017/10/11
     */
    Integer getEntranceRecordCount(Map<String, Object> params);

    /**
     * <desc>
     *       批量删除已迁移的访客门禁旧通行记录信息.
     * </desc>
     *
     * @param deviceUniqueArr 待保存的旧访客通行记录列表
     * @return 受影响的行数
     * @author Juguang.S
     * @createDate 2018/08/13
     */
    void updateOldVisitor(@Param("deviceUniqueArr") List<String> deviceUniqueArr);
}
